/*LICENSE_BEGIN
 * ******************************************************************
 * All original parts of SoccerScope2003 have copyright (2003) by
 * Team YowAI, represented by Mr. Shuhei Shiota
 * The Department of Creative Informatics
 * The Graduate School of Information Science and Technology
 * The University of Tokyo
 * 
 * Additional classes (except libraries in /lib) were developed by 
 * the Dainamite Robocup-Team of the DAI-Labor, TU-Berlin 
 * (www.dai-labor.de)
 * 
 * Extended/new classes/packages are:
 *   soccerscope.analyzer.LogfileAnalyzer
 *   soccerscope.daistatistic.*
 *   soccerscope.daistatistic.charts.*
 *   soccerscope.daistatistic.tools.*
 *   soccerscope.db.*
 *   soccerscope.dialog.*
 *   soccerscope.model.PlayerWorldModel
 *   soccerscope.model.SimplePlayer
 *   soccerscope.net.AgentConnector
 *   soccerscope.training.*
 *   soccerscope.training.conditions.*
 * ******************************************************************
LICENSE_END*/
package soccerscope.daistatistic;

import javax.swing.table.AbstractTableModel;

/**
 * 
 * the table model object used for the statistic dialog chart selection
 * 
 */
public class StatisticDialogSelectionTableModel extends AbstractTableModel {

	private static final long serialVersionUID = 1L;

	/**
	 * 
	 * getter for the row count
	 * 
	 * @return int
	 */
	public int getRowCount() {
		return 13;
	}

	/**
	 * 
	 * getter for the column count
	 * 
	 * @return int
	 */
	public int getColumnCount() {
		return 3;
	}

	/**
	 * 
	 * getter for the values in a specivic row and column
	 * 
	 * @return Object the text for the table field
	 */
	public Object getValueAt(int row, int col) {
		if (row == 0) {
			if (col == 0)
				return "Stamina";
			if (col == 1)
				return "View Quality";
			if (col == 2)
				return null;
		}

		if (row == 1) {
			if (col == 0)
				return "View Angle";
			if (col == 1)
				return "Body Angle";
			if (col == 2)
				return "Neck Angle";
		}

		if (row == 2) {
			if (col == 0)
				return "Position absolute difference";
			if (col == 1)
				return "Position X difference";
			if (col == 2)
				return "Position Y difference";
		}

		if (row == 3) {
			if (col == 0)
				return "Speed absolute difference";
			if (col == 1)
				return "Speed X difference";
			if (col == 2)
				return "Speed Y difference";
		}

		if (row == 4) {
			if (col == 0)
				return "Neck angle difference";
			if (col == 1)
				return "Body angle difference";
			if (col == 2)
				return "Ball Speed(t)-(t-1)";
		}

		if (row == 5) {
			if (col == 0)
				return "Ball position absolute difference";
			if (col == 1)
				return "Ball position X difference";
			if (col == 2)
				return "Ball position Y difference";
		}

		if (row == 6) {
			if (col == 0)
				return "Ball speed absolute difference";
			if (col == 1)
				return "Ball speed X difference";
			if (col == 2)
				return "Ball speed Y difference";
		}

		if (row == 7) {
			if (col == 0)
				return "Ball IP absolute difference (t-1)";
			if (col == 1)
				return "Ball IP X difference (t-1)";
			if (col == 2)
				return "Ball IP Y difference (t-1)";
		}

		if (row == 8) {
			if (col == 0)
				return "Ball Possession (in radius)";
			if (col == 1)
				return "Ball Possession";
			if (col == 2)
				return "Player Pass";
		}

		if (row == 9) {
			if (col == 0)
				return "Holes";
			if (col == 1)
				return "Holes (all Player)";
			if (col == 2)
				return null;
		}

		if (row == 10) {
			if (col == 0)
				return "Distance Ball to Goal";
			if (col == 1)
				return "Distance to Enemy/Teammate";
			if (col == 2)
				return null;
		}

		if (row == 11) {
			if (col == 0)
				return "Position of Opponent";
			if (col == 1)
				return "Position of Teammate";
			if (col == 2)
				return "Position Statistics";
		}

		if (row == 12) {
			if (col == 0)
				return "Speed of Opponent";
			if (col == 1)
				return "Speed of Teammate";
			if (col == 2)
				return "State Statistic";
		}

		return null;
	}

}
